Выделенный сервер
Эта статья является переводом, и её обновление может не успевать за изменениями оригинальной статьи. Поэтому будьте осторожны. Если хоть немного знаете английский, то лучше ознакомиться с оригиналом, а не с переводом. Dedicated Server (выделенный сервер) - это оптимизированная версия Don't Starve Together (DST), которая предназначена для продолжительной работы без графического интерфейса пользователя. Другими словами, эта версия нужна только для создания сервера, чтобы к нему присоединялись другие игроки. Можно скачать через клиент Steam или SteamCMD как для Windows, так и для Linux. Требования У вас должна быть установлена копия Don't Starve Together, чтобы запустить выделенный сервер. При этом можно запустить много копий серверной части, имея лишь одну копию DST. Выделенный сервер использует другой способ соединения, в отличие от обычной DST. Вы должны правильно настроить проброску портов на своём сетевом оборудовании. По умолчанию сервер использует порт: *UDP 10999 To create a reliable/performant Dedicated Server experience you will want to ensure that your system has the following properties: Чтобы сервер был производительным, без лагов, убедитесь, что ваш компьютер удовлетворяет следующим требованиям: * Интернет (на отдачу) - 8 килобайт на игрока в секунду * ОЗУ - около 65Mb на игрока * ЦПУ - пока не известно (см. оригинал статьи) * Установленный VCRedist_2008 (x86) Установка ''Скачивание В настоящий момент поддерживаются 2 способа скачивания. Скачивание через SteamCMD Узнать больше о SteamCMD можно по ссылке: https://developer.valvesoftware.com/wiki/SteamCMD:ru SteamCMD для Windows login anonymous force_install_dir C:\path\to\directory app_update 343050 validate SteamCMD для Linux (Debian) sudo dpkg --add-architecture i386 # If running a 64bit OS sudo apt-get update sudo apt-get install lib32gcc1 # If running a 64bit OS sudo apt-get install libgcc1 # If running a 32bit OS sudo apt-get install libcurl4-gnutls-dev:i386 sudo useradd -m steam chmod a+rw `tty` # Note those are backticks, not single quotes sudo su - steam mkdir ~/steamcmd cd ~/steamcmd wget http://media.steampowered.com/installer/steamcmd_linux.tar.gz tar -xvzf steamcmd_linux.tar.gz ./steamcmd.sh login anonymous force_install_dir /home/steam/steamapps/DST (or whatever absolute path you want) app_update 343050 validate quit cd /home/steam/steamapps/DST/bin/ screen -S "DST Server" ./dontstarve_dedicated_server_nullrenderer Внимание! Если у вас stable версия, то вы не сможете запустить сервер из-за старой версии libc. Ошибка будет следующей: *./dontstarve_dedicated_server_nullrenderer: /lib/i386-linux-gnu/i686/cmov/libc.so.6: version 'GLIBC_2.15' not found (required by ./dontstarve_dedicated_server_nullrenderer) Правда, есть хитрый способ обойти это (используя https://github.com/dgibbs64/linuxgameservers/tree/master/Insurgency/dependencies ) mkdir ~/dst_lib && cd ~/dst_lib wget https://github.com/dgibbs64/linuxgameservers/raw/master/Insurgency/dependencies/libc.so.6 wget https://github.com/dgibbs64/linuxgameservers/raw/master/Insurgency/dependencies/libpthread.so.0 wget https://github.com/dgibbs64/linuxgameservers/raw/master/Insurgency/dependencies/librt.so.1 И для запуска сервера: cd /home/steam/steamapps/DST/bin/ screen -S "DST Server" bash -c 'LD_LIBRARY_PATH=~/dst_lib ./dontstarve_dedicated_server_nullrenderer' Сервер будет запущен. Дальше вы можете нажать CTRL-A D, чтобы спрятать окно. Если вы захотите снова увидеть его, то просто наберите: screen -x DST Скачивание через клиент Steam Работает только для Windows и “Desktop Linux” (требует графического интерфейса ОС). Если у вас есть Don't Starve Together, то зайдите в Библиотека->Инструменты и найдите там "Don't Starve Together Dedicated Server". Далее установите и запустите. Серверные токены Чтобы запустить публичный выделенный сервер "Неголодайки", нужно ввести, так называемый "серверный токен". Это ключ, который подтверждает владение вами купленной копии DST и позволяет компании Клей модерировать сервера, которые нарушают лицензию. Чтобы сгенерировать токен, сделайте следующее: *Запуститеn Don't Starve Together. Нажмите "Играть". *Нажмите тильду (~), чтобы открыть консоль, и наберите: TheNet:GenerateServerToken() *Серверный токен будет записан в файл server_token.txt, который находится по адресу: **Windows: /My Documents/Klei/DoNotStarveTogether /server_token.txt **Linux: //.klei/DoNotStarveTogether/server_token.txt *Добавьте ваш server_token.txt в папку с настройками, чтобы сервер мог авторизоваться. Запуск Windows: dontstarve_dedicated_server_nullrenderer.exe -conf_dir Linux: ./dontstarve_dedicated_server_nullrenderer -conf_dir Конфигурация Основной способ настройки сервера - это редактирование файла settings.ini *На Windows: Documents/Klei/DoNotStarveTogether/Settings.ini *На Linux: //.klei/DoNotStarveTogether/settings.ini Настройки разделены на разные категории. Аккуратно редактируйте, чтобы не перепутать их. network default_server_name = Уникально имя сервера (очень желательно на английском) default_server_description = Описание сервера (тоже нужно по-английски) server_port = 10999 server_password = password max_players = 1 .. 64 pvp = true | false game_mode = endless | survival | wilderness Снапшоты (snapshots) позволяют вернуть сервер к более раннему состоянию. Эта фича довольно новая, так что используйте с опаской. Лучше пока её отключить. enable_snapshots =true | false Автосохранения создаются в начале нового игрового дня. enable_autosaver = true | false "Tick rate" определяет качество вашего сервера. Чем выше, тем больше потребление ЦПУ, но тем более плавно и гладко выглядит игра для пользователей. tick_rate = 30 [ 10 | 15 | 30 | 60 ] Время в миллисекундах, которое нужно выждать, прежде чем отключать пользователя, который "повис" (не отвечает на сетевые запросы сервера). connection_timeout = 8000 Какой игровой слот использовать server_save_slot = 1..5 Когда нет администратора, игроки могут кикать вандалов путем голосования. enable_vote_kick = true|false Ставить ли сервер на паузу, когда он совсем пустой. pause_when_empty = [ true | false ] account Позволить играть только по локальной сети: dedicated_lan_server = [ true | false ] Опции запуска через консоль ОС:'' Эти опции перезаписывают значения из settings.ini Какой порт использовать: -port .. 65535 Перезаписать значение tick rate: -tick .. 60 Изменить максимальное количество игроков: -players .. 64 Указать серверу возможность игры только по локальной сети. В этом случае серверу не требуется токен для авторизации, и он не будет указан в списке серверов Клея. -lan Указать серверу другую папку с настройками: -conf_dir DoNotStarveServerDirectory Multiple Servers on the Same Machine Продолжение следует... :) Категория:Don't Starve